import axios from 'axios';
import router from '@/router';

// 根据环境变量或者配置文件来设置baseURL，这里暂时写死
const baseURL = 'http://tp.cm:8080/';
// 超时时间5秒
const timeout = 5000;

// 创建一个自定义的axios实例
const service = axios.create({
    baseURL: baseURL,
    timeout: timeout
});

// 请求拦截器
service.interceptors.request.use(config => {
    // 在发送请求前，从sessionStorage中获取Authorization信息，并设置到请求头中
    const authorization = sessionStorage.getItem('Authorization');
    if (authorization) {
        config.headers['Authorization'] = authorization;
    }
    return config;
}, error => {
    // 请求发生错误时，直接将错误信息以Promise.reject的形式返回，方便后续在调用处进行统一的错误处理
    return Promise.reject(error);
});

// 响应拦截器
service.interceptors.response.use(response => {
    return response;
}, error => {
    return error.response;
});
export default service;